import pandas as pd
import requests
import os

# 读取 Excel 文件
file_path = 'data.xlsx'  # 替换为你的 Excel 文件路径
df = pd.read_excel(file_path)

# 假设图片链接在名为 'img' 的列中
img_column = 'img'  # 替换为你的图片链接字段名

# 创建一个用于保存图片的文件夹
output_folder = r'F:\动漫\job-syatem\src\main\resources\static\upload\item'  # 图片保存路径
os.makedirs(output_folder, exist_ok=True)

# 下载图片
for index, row in df.iterrows():
    file_name = str(row[img_column]).split('/')[-2]
    # 检查文件是否已经存在
    img_name = os.path.join(output_folder, file_name)  # 这里可以根据需要更改文件名生成方式
    if os.path.exists(img_name):
        print(f'文件存在: {img_name}, 不下载.')
        continue  # 如果文件存在，则跳过下载

    img_url = row[img_column]  # 获取图片链接
    if pd.notna(img_url):  # 确保链接不为空
        try:
            # 发送请求下载图片
            response = requests.get(img_url)
            response.raise_for_status()  # 检查请求是否成功
            # 获取图片文件名
            img_name = os.path.join(output_folder, file_name)  # 使用行号作为文件名
            # 保存图片
            with open(img_name, 'wb') as f:
                f.write(response.content)
            print(f'下载: {img_name}')
        except Exception as e:
            print(f'Failed to download {img_url}: {e}')
